package com.tencent.api.transactionnew;

import com.tencent.api.utils.JDBCUtilsV2;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

/**
 * bank表的数据库操作方法存储类
 */
public class BankDao {
    /**
     * 加钱的数据库操作方法（jdbc）
     * @param account 加钱的账号
     * @param money 加钱的金额
     */
    public void add(String account,int money) throws  SQLException {

        //使用新版本的JDBCUtilsV2，可以不在方法声明部分添加Connection变量，可以直接调用工具类JDBCUtilsV2的getConnection()方法
        Connection connection = JDBCUtilsV2.getConnection();

        String sql = "update t_bank set money=money+? where account=?;";
        PreparedStatement preparedStatement = connection.prepareStatement(sql);
        preparedStatement.setObject(1,money);
        preparedStatement.setObject(2,account);
        preparedStatement.executeUpdate();
        preparedStatement.close();
//        connection.close();
        System.out.println("加钱成功！");
    }

    /**
     * 减钱的数据库操作方法（jdbc）
     * @param account 减钱的账号
     * @param money 减钱的金额
     */
    public void sub(String account,int money) throws SQLException {

        Connection connection = JDBCUtilsV2.getConnection();

        String sql = "update t_bank set money=money-? where account=?;";
        PreparedStatement preparedStatement = connection.prepareStatement(sql);
        preparedStatement.setObject(1,money);
        preparedStatement.setObject(2,account);
        preparedStatement.executeUpdate();
        preparedStatement.close();
//        connection.close();
        System.out.println("减钱成功！");
    }
}
